package com.lsu.state.practice;

/**
 * 关闭状态
 *
 * @Author wang suo
 * @Date 2020/12/26 0026 13:59
 * @Version 1.0
 */
public class ClosingState extends LiftState {

    /**
     * 电梯门关闭，这是关闭状态要实现的动作
     */
    @Override
    public void close() {
        System.out.println("电梯门关闭...");

    }

    /**
     * 电梯门关了再打开，逗你玩呢，那这个允许呀
     */
    @Override
    public void open() {
        //置为门敞状态
        super.context.setLiftState(Context.OPENNING_STATE);
        super.context.getLiftState().open();
    }

    /**
     * 电梯门关了就跑，这是再正常不过了
     */
    @Override
    public void run() {
        //设置为运行状态；
        super.context.setLiftState(Context.RUNNING_STATE);
        super.context.getLiftState().run();
    }

    /**
     * 电梯门关着，我就不按楼层
     */
    @Override
    public void stop() {
        //设置为停止状态；
        super.context.setLiftState(Context.STOPPING_STATE);
        super.context.getLiftState().stop();
    }

}
